<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width,initial-scale=1.0">
  <title>index</title>
</head>
<body>
<div id="app">
  <!--缺点: 大量的业务带代码写在视图中,页面代码不简洁-->
  <p>反转字符串: {{message.split('').reverse().join('')}}</p>

  <!--改造方式1:方法,每次都会调用方法-->
  <p>方法: {{reversed()}} </p>
  <p>方法: {{reversed()}} </p>
  <p>方法: {{reversed()}} </p>
  <p>方法: {{reversed()}} </p>

  <!--改造方式2:计算属性,类似于缓存了属性,只调用一次-->
  <p>计算属性: {{hellomessage}} </p>
  <p>计算属性: {{hellomessage}} </p>
  <p>计算属性: {{hellomessage}} </p>
  <p>计算属性: {{hellomessage}} </p>

</div>
<script src="vue.js"></script>
<script>
  new Vue({
    el: '#app',
    data() {  // data的完整写法
      return {
        message: 'hello'
      }
    },
    methods: {
      reversed() {
        console.log('哈哈哈')
        return this.message.split('').reverse().join('')
      }
    },
    computed: {  // 注意是 computed ddddddddddddddd
      hellomessage() {   // 属性名不能和 data中的属性名重复
        console.log('嘿嘿嘿')
        return this.message.split('').reverse().join('')
      }
    }
  })
</script>
</body>
</html>